
package com.alks.entity.data.entity.board;

import com.alks.entity.data.page.PageParam;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

public class FinanceOtherCharges extends PageParam implements Serializable {
    private String isMines;
    private String companyId;
    private String rowId;
    private String chargesNo;
    private String custInvNo;
    private Double outNum;
    private String factoryNo;
    private String factoryName;
    private String supplierName;
    private String supplierNo;
    private String chargesType;
    private Double amount;
    private String dutyFactory;
    private Double dutyAmount;
    private String remark;
    private String cfmFlag;

    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date aoaMonth;
    private String createUser;
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy/MM/dd")
    private Date createDate;
    private String cfmUser;
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date cfmDate;
    @JsonIgnore
    private boolean mine;

    public static FinanceOtherChargesBuilder builder() {
        return new FinanceOtherChargesBuilder();
    }

    public String getCompanyId() {
        return this.companyId;
    }

    public String getRowId() {
        return this.rowId;
    }

    public String getChargesNo() {
        return this.chargesNo;
    }

    public String getCustInvNo() {
        return this.custInvNo;
    }

    public Double getOutNum() {
        return this.outNum;
    }

    public String getFactoryNo() {
        return this.factoryNo;
    }

    public String getFactoryName() {
        return this.factoryName;
    }

    public String getSupplierName() {
        return this.supplierName;
    }

    public String getSupplierNo() {
        return this.supplierNo;
    }

    public String getChargesType() {
        return this.chargesType;
    }

    public Double getAmount() {
        return this.amount;
    }

    public String getDutyFactory() {
        return this.dutyFactory;
    }

    public Double getDutyAmount() {
        return this.dutyAmount;
    }

    public String getRemark() {
        return this.remark;
    }

    public String getCfmFlag() {
        return this.cfmFlag;
    }

    public Date getAoaMonth() {
        return this.aoaMonth;
    }

    public String getCreateUser() {
        return this.createUser;
    }

    public Date getCreateDate() {
        return this.createDate;
    }

    public String getCfmUser() {
        return this.cfmUser;
    }

    public Date getCfmDate() {
        return this.cfmDate;
    }

    public boolean isMine() {
        return this.mine;
    }

    public void setCompanyId(String companyId) {
        this.companyId = companyId;
    }

    public void setRowId(String rowId) {
        this.rowId = rowId;
    }

    public void setChargesNo(String chargesNo) {
        this.chargesNo = chargesNo;
    }

    public void setCustInvNo(String custInvNo) {
        this.custInvNo = custInvNo;
    }

    public void setOutNum(Double outNum) {
        this.outNum = outNum;
    }

    public void setFactoryNo(String factoryNo) {
        this.factoryNo = factoryNo;
    }

    public void setFactoryName(String factoryName) {
        this.factoryName = factoryName;
    }

    public void setSupplierName(String supplierName) {
        this.supplierName = supplierName;
    }

    public void setSupplierNo(String supplierNo) {
        this.supplierNo = supplierNo;
    }

    public void setChargesType(String chargesType) {
        this.chargesType = chargesType;
    }

    public void setAmount(Double amount) {
        this.amount = amount;
    }

    public void setDutyFactory(String dutyFactory) {
        this.dutyFactory = dutyFactory;
    }

    public void setDutyAmount(Double dutyAmount) {
        this.dutyAmount = dutyAmount;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public void setCfmFlag(String cfmFlag) {
        this.cfmFlag = cfmFlag;
    }

    public void setAoaMonth(Date aoaMonth) {
        this.aoaMonth = aoaMonth;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public void setCfmUser(String cfmUser) {
        this.cfmUser = cfmUser;
    }

    public void setCfmDate(Date cfmDate) {
        this.cfmDate = cfmDate;
    }

    @JsonIgnore
    public void setMine(boolean mine) {
        this.mine = mine;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof FinanceOtherCharges)) {
            return false;
        } else {
            FinanceOtherCharges other = (FinanceOtherCharges)o;
            if (!other.canEqual(this)) {
                return false;
            } else if (this.isMine() != other.isMine()) {
                return false;
            } else {
                label253: {
                    Object this$outNum = this.getOutNum();
                    Object other$outNum = other.getOutNum();
                    if (this$outNum == null) {
                        if (other$outNum == null) {
                            break label253;
                        }
                    } else if (this$outNum.equals(other$outNum)) {
                        break label253;
                    }

                    return false;
                }

                label246: {
                    Object this$amount = this.getAmount();
                    Object other$amount = other.getAmount();
                    if (this$amount == null) {
                        if (other$amount == null) {
                            break label246;
                        }
                    } else if (this$amount.equals(other$amount)) {
                        break label246;
                    }

                    return false;
                }

                Object this$dutyAmount = this.getDutyAmount();
                Object other$dutyAmount = other.getDutyAmount();
                if (this$dutyAmount == null) {
                    if (other$dutyAmount != null) {
                        return false;
                    }
                } else if (!this$dutyAmount.equals(other$dutyAmount)) {
                    return false;
                }

                label232: {
                    Object this$companyId = this.getCompanyId();
                    Object other$companyId = other.getCompanyId();
                    if (this$companyId == null) {
                        if (other$companyId == null) {
                            break label232;
                        }
                    } else if (this$companyId.equals(other$companyId)) {
                        break label232;
                    }

                    return false;
                }

                Object this$rowId = this.getRowId();
                Object other$rowId = other.getRowId();
                if (this$rowId == null) {
                    if (other$rowId != null) {
                        return false;
                    }
                } else if (!this$rowId.equals(other$rowId)) {
                    return false;
                }

                label218: {
                    Object this$chargesNo = this.getChargesNo();
                    Object other$chargesNo = other.getChargesNo();
                    if (this$chargesNo == null) {
                        if (other$chargesNo == null) {
                            break label218;
                        }
                    } else if (this$chargesNo.equals(other$chargesNo)) {
                        break label218;
                    }

                    return false;
                }

                Object this$custInvNo = this.getCustInvNo();
                Object other$custInvNo = other.getCustInvNo();
                if (this$custInvNo == null) {
                    if (other$custInvNo != null) {
                        return false;
                    }
                } else if (!this$custInvNo.equals(other$custInvNo)) {
                    return false;
                }

                Object this$factoryNo = this.getFactoryNo();
                Object other$factoryNo = other.getFactoryNo();
                if (this$factoryNo == null) {
                    if (other$factoryNo != null) {
                        return false;
                    }
                } else if (!this$factoryNo.equals(other$factoryNo)) {
                    return false;
                }

                Object this$factoryName = this.getFactoryName();
                Object other$factoryName = other.getFactoryName();
                if (this$factoryName == null) {
                    if (other$factoryName != null) {
                        return false;
                    }
                } else if (!this$factoryName.equals(other$factoryName)) {
                    return false;
                }

                label190: {
                    Object this$supplierName = this.getSupplierName();
                    Object other$supplierName = other.getSupplierName();
                    if (this$supplierName == null) {
                        if (other$supplierName == null) {
                            break label190;
                        }
                    } else if (this$supplierName.equals(other$supplierName)) {
                        break label190;
                    }

                    return false;
                }

                label183: {
                    Object this$supplierNo = this.getSupplierNo();
                    Object other$supplierNo = other.getSupplierNo();
                    if (this$supplierNo == null) {
                        if (other$supplierNo == null) {
                            break label183;
                        }
                    } else if (this$supplierNo.equals(other$supplierNo)) {
                        break label183;
                    }

                    return false;
                }

                Object this$chargesType = this.getChargesType();
                Object other$chargesType = other.getChargesType();
                if (this$chargesType == null) {
                    if (other$chargesType != null) {
                        return false;
                    }
                } else if (!this$chargesType.equals(other$chargesType)) {
                    return false;
                }

                label169: {
                    Object this$dutyFactory = this.getDutyFactory();
                    Object other$dutyFactory = other.getDutyFactory();
                    if (this$dutyFactory == null) {
                        if (other$dutyFactory == null) {
                            break label169;
                        }
                    } else if (this$dutyFactory.equals(other$dutyFactory)) {
                        break label169;
                    }

                    return false;
                }

                label162: {
                    Object this$remark = this.getRemark();
                    Object other$remark = other.getRemark();
                    if (this$remark == null) {
                        if (other$remark == null) {
                            break label162;
                        }
                    } else if (this$remark.equals(other$remark)) {
                        break label162;
                    }

                    return false;
                }

                Object this$cfmFlag = this.getCfmFlag();
                Object other$cfmFlag = other.getCfmFlag();
                if (this$cfmFlag == null) {
                    if (other$cfmFlag != null) {
                        return false;
                    }
                } else if (!this$cfmFlag.equals(other$cfmFlag)) {
                    return false;
                }

                Object this$aoaMonth = this.getAoaMonth();
                Object other$aoaMonth = other.getAoaMonth();
                if (this$aoaMonth == null) {
                    if (other$aoaMonth != null) {
                        return false;
                    }
                } else if (!this$aoaMonth.equals(other$aoaMonth)) {
                    return false;
                }

                label141: {
                    Object this$createUser = this.getCreateUser();
                    Object other$createUser = other.getCreateUser();
                    if (this$createUser == null) {
                        if (other$createUser == null) {
                            break label141;
                        }
                    } else if (this$createUser.equals(other$createUser)) {
                        break label141;
                    }

                    return false;
                }

                label134: {
                    Object this$createDate = this.getCreateDate();
                    Object other$createDate = other.getCreateDate();
                    if (this$createDate == null) {
                        if (other$createDate == null) {
                            break label134;
                        }
                    } else if (this$createDate.equals(other$createDate)) {
                        break label134;
                    }

                    return false;
                }

                Object this$cfmUser = this.getCfmUser();
                Object other$cfmUser = other.getCfmUser();
                if (this$cfmUser == null) {
                    if (other$cfmUser != null) {
                        return false;
                    }
                } else if (!this$cfmUser.equals(other$cfmUser)) {
                    return false;
                }

                Object this$cfmDate = this.getCfmDate();
                Object other$cfmDate = other.getCfmDate();
                if (this$cfmDate == null) {
                    if (other$cfmDate != null) {
                        return false;
                    }
                } else if (!this$cfmDate.equals(other$cfmDate)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(Object other) {
        return other instanceof FinanceOtherCharges;
    }


    public String toString() {
        return "FinanceOtherCharges(companyId=" + this.getCompanyId() + ", rowId=" + this.getRowId() + ", chargesNo=" + this.getChargesNo() + ", custInvNo=" + this.getCustInvNo() + ", outNum=" + this.getOutNum() + ", factoryNo=" + this.getFactoryNo() + ", factoryName=" + this.getFactoryName() + ", supplierName=" + this.getSupplierName() + ", supplierNo=" + this.getSupplierNo() + ", chargesType=" + this.getChargesType() + ", amount=" + this.getAmount() + ", dutyFactory=" + this.getDutyFactory() + ", dutyAmount=" + this.getDutyAmount() + ", remark=" + this.getRemark() + ", cfmFlag=" + this.getCfmFlag() + ", aoaMonth=" + this.getAoaMonth() + ", createUser=" + this.getCreateUser() + ", createDate=" + this.getCreateDate() + ", cfmUser=" + this.getCfmUser() + ", cfmDate=" + this.getCfmDate() + ", mine=" + this.isMine() + ")";
    }

    public FinanceOtherCharges() {
    }

    public FinanceOtherCharges(String companyId, String rowId, String chargesNo, String custInvNo, Double outNum, String factoryNo, String factoryName, String supplierName, String supplierNo, String chargesType, Double amount, String dutyFactory, Double dutyAmount, String remark, String cfmFlag, Date aoaMonth, String createUser, Date createDate, String cfmUser, Date cfmDate, boolean mine) {
        this.companyId = companyId;
        this.rowId = rowId;
        this.chargesNo = chargesNo;
        this.custInvNo = custInvNo;
        this.outNum = outNum;
        this.factoryNo = factoryNo;
        this.factoryName = factoryName;
        this.supplierName = supplierName;
        this.supplierNo = supplierNo;
        this.chargesType = chargesType;
        this.amount = amount;
        this.dutyFactory = dutyFactory;
        this.dutyAmount = dutyAmount;
        this.remark = remark;
        this.cfmFlag = cfmFlag;
        this.aoaMonth = aoaMonth;
        this.createUser = createUser;
        this.createDate = createDate;
        this.cfmUser = cfmUser;
        this.cfmDate = cfmDate;
        this.mine = mine;
    }

    public String getIsMines() {
        return isMines;
    }

    public void setIsMines(String isMines) {
        this.isMines = isMines;
    }

    public static class FinanceOtherChargesBuilder {
        private String companyId;
        private String rowId;
        private String chargesNo;
        private String custInvNo;
        private Double outNum;
        private String factoryNo;
        private String factoryName;
        private String supplierName;
        private String supplierNo;
        private String chargesType;
        private Double amount;
        private String dutyFactory;
        private Double dutyAmount;
        private String remark;
        private String cfmFlag;
        private Date aoaMonth;
        private String createUser;
        private Date createDate;
        private String cfmUser;
        private Date cfmDate;
        private boolean mine;

        FinanceOtherChargesBuilder() {
        }

        public FinanceOtherChargesBuilder companyId(String companyId) {
            this.companyId = companyId;
            return this;
        }

        public FinanceOtherChargesBuilder rowId(String rowId) {
            this.rowId = rowId;
            return this;
        }

        public FinanceOtherChargesBuilder chargesNo(String chargesNo) {
            this.chargesNo = chargesNo;
            return this;
        }

        public FinanceOtherChargesBuilder custInvNo(String custInvNo) {
            this.custInvNo = custInvNo;
            return this;
        }

        public FinanceOtherChargesBuilder outNum(Double outNum) {
            this.outNum = outNum;
            return this;
        }

        public FinanceOtherChargesBuilder factoryNo(String factoryNo) {
            this.factoryNo = factoryNo;
            return this;
        }

        public FinanceOtherChargesBuilder factoryName(String factoryName) {
            this.factoryName = factoryName;
            return this;
        }

        public FinanceOtherChargesBuilder supplierName(String supplierName) {
            this.supplierName = supplierName;
            return this;
        }

        public FinanceOtherChargesBuilder supplierNo(String supplierNo) {
            this.supplierNo = supplierNo;
            return this;
        }

        public FinanceOtherChargesBuilder chargesType(String chargesType) {
            this.chargesType = chargesType;
            return this;
        }

        public FinanceOtherChargesBuilder amount(Double amount) {
            this.amount = amount;
            return this;
        }

        public FinanceOtherChargesBuilder dutyFactory(String dutyFactory) {
            this.dutyFactory = dutyFactory;
            return this;
        }

        public FinanceOtherChargesBuilder dutyAmount(Double dutyAmount) {
            this.dutyAmount = dutyAmount;
            return this;
        }

        public FinanceOtherChargesBuilder remark(String remark) {
            this.remark = remark;
            return this;
        }

        public FinanceOtherChargesBuilder cfmFlag(String cfmFlag) {
            this.cfmFlag = cfmFlag;
            return this;
        }

        public FinanceOtherChargesBuilder aoaMonth(Date aoaMonth) {
            this.aoaMonth = aoaMonth;
            return this;
        }

        public FinanceOtherChargesBuilder createUser(String createUser) {
            this.createUser = createUser;
            return this;
        }

        public FinanceOtherChargesBuilder createDate(Date createDate) {
            this.createDate = createDate;
            return this;
        }

        public FinanceOtherChargesBuilder cfmUser(String cfmUser) {
            this.cfmUser = cfmUser;
            return this;
        }

        public FinanceOtherChargesBuilder cfmDate(Date cfmDate) {
            this.cfmDate = cfmDate;
            return this;
        }

        @JsonIgnore
        public FinanceOtherChargesBuilder mine(boolean mine) {
            this.mine = mine;
            return this;
        }

        public FinanceOtherCharges build() {
            return new FinanceOtherCharges(this.companyId, this.rowId, this.chargesNo, this.custInvNo, this.outNum, this.factoryNo, this.factoryName, this.supplierName, this.supplierNo, this.chargesType, this.amount, this.dutyFactory, this.dutyAmount, this.remark, this.cfmFlag, this.aoaMonth, this.createUser, this.createDate, this.cfmUser, this.cfmDate, this.mine);
        }

        public String toString() {
            return "FinanceOtherCharges.FinanceOtherChargesBuilder(companyId=" + this.companyId + ", rowId=" + this.rowId + ", chargesNo=" + this.chargesNo + ", custInvNo=" + this.custInvNo + ", outNum=" + this.outNum + ", factoryNo=" + this.factoryNo + ", factoryName=" + this.factoryName + ", supplierName=" + this.supplierName + ", supplierNo=" + this.supplierNo + ", chargesType=" + this.chargesType + ", amount=" + this.amount + ", dutyFactory=" + this.dutyFactory + ", dutyAmount=" + this.dutyAmount + ", remark=" + this.remark + ", cfmFlag=" + this.cfmFlag + ", aoaMonth=" + this.aoaMonth + ", createUser=" + this.createUser + ", createDate=" + this.createDate + ", cfmUser=" + this.cfmUser + ", cfmDate=" + this.cfmDate + ", mine=" + this.mine + ")";
        }
    }
}
